home *** CD-ROM | disk | FTP | other *** search
/ PC World Komputer 2010 April / PCWorld0410.iso / hity wydania / trueSpace 7.6 / tS761B8Std.exe / {app} / Scripts / MaterialEditor / BricksHidden / SpotVS_2.Brick.xml < prev    next >
Extensible Markup Language  |  2008-06-10  |  2KB  |  30 lines

  1. <?xml version="1.0" encoding="utf-8" ?>
  2. <ME_BRICK GUID="{69CFCCB1-9315-4763-BDF1-46206B76180F}" Name="RtUSpotlightVS2" GUIName="Spotlight-Vertex2" Description="Spotlight vertex shader part">
  3.     <ME_BRICK_INPUTPARAM GUID="{44B5E5BD-8FC2-463e-BB36-00814D4EA939}" Name="SpotlightMatrix" Type="RtFloat4x4"/>
  4.     <ME_BRICK_INPUTPARAM GUID="{0A8E2E47-2596-4138-950F-ECB427F16B3B}" Name="LightPosition" Type="RtFloat4"/>
  5.     <ME_BRICK_INPUTPARAM GUID="{518CD9C6-8EAF-4b8e-B756-7E4DDB9239F7}" Name="WorldPosition" Type="RtFloat4"/>
  6.     <ME_BRICK_INPUTPARAM GUID="{97241632-9FA0-40ad-BEA4-3D1D50040F38}" Name="ZNear" Type="RtFloat"/>
  7.     <ME_BRICK_INPUTPARAM GUID="{5BEE7046-BEB6-4e89-A64F-07359E390A09}" Name="ZFar" Type="RtFloat"/>
  8.     <ME_BRICK_OUTPUTPARAM GUID="{AE3E12E2-FB7D-4f17-8DF4-071745789710}" Name="LightColor" Type="RtFloat4"/>
  9.     <ME_BRICK_OUTPUTPARAM GUID="{3ABE03E4-5048-4fd8-BC7C-D9AE7F2FBFC0}" Name="LightDistance" Type="RtFloat"/>
  10.     <ME_BRICK_OUTPUTPARAM GUID="{2604EBE8-9B50-4eeb-9D47-716A110D2CB7}" Name="LightVector" Type="RtFloat3"/>
  11.     <ME_BRICK_CODE>
  12.           <![CDATA[
  13.     //The spotlight VS method
  14.     void RtUSpotlightVS2(in RtFloat4x4 SpotlightMatrix, in RtFloat4 LightPosition, in RtFloat4 WorldPosition, 
  15.                                     in RtFloat ZNear, in RtFloat ZFar,
  16.                                     out RtFloat4 LightColor, out RtFloat LightDistance, out RtFloat3 LightVector)
  17.     {
  18.         LightVector = LightPosition - WorldPosition;
  19.         LightDistance = rtx_Length(LightVector);
  20.         RtFloat fDist = (LightDistance - ZNear) / (ZFar - ZNear);
  21.         LightColor = rtx_Mul(WorldPosition, SpotlightMatrix);
  22.         LightColor.xy = float2(0.5f, -0.5f) * LightColor.xy + 0.5f*LightColor.w;
  23. //        LightColor.xy = LightColor.xy / LightColor.w;
  24. //        LightColor.xy = float2(0.5f, -0.5f) * LightColor.xy + float2(0.5f, 0.5f);
  25. //        LightColor.xy = LightColor.xy * LightColor.w;
  26. //        LightColor.z = fDist;
  27.     }
  28.     ]]></ME_BRICK_CODE>
  29. </ME_BRICK>
  30.